package cc.lj.internal.coupons.domain.ticket.repository;

import cc.lj.internal.core.model.PageParam;
import cc.lj.internal.coupons.infrastructure.po.CapBatchPO;
import cc.lj.internal.coupons.infrastructure.po.TicketBatchPO;
import com.github.pagehelper.PageInfo;

import java.util.List;

/**
 * 电子券批次表仓储接口
 * @author liangxifeng
 * @date 2021-12-14
 */
public interface ITicketBatchRepository {

    /**
     * 根据ID修改
     */
    Integer updateById(TicketBatchPO entityPO);

    /**
     * 根据ID查询
     */
    TicketBatchPO getById(Integer id);


    /**
     * 分页获取数据
     */
    PageInfo<TicketBatchPO> selectPage(PageParam pageParam);

    /**
     * 批量获取数据
     */
    List<TicketBatchPO> getList(TicketBatchPO entityPO);

    /**
     * 通过主键批量查询批次数据
     * @param batchIdList 主键list
     * @return
     */
    List<TicketBatchPO> selectBatchIds(List<Integer> batchIdList);

    /**
     * 通过主键批量查询未绑定活动的批次数据
     * @param batchIdList 主键list
     * @return
     */
    List<TicketBatchPO> getNoBindCodeListByIds(List<Integer> batchIdList);

    /**
     * 通过主键批量查询电子券批次
     * @param batchIds 主键list
     * @return
     */
    List<TicketBatchPO> getByIds(List<Integer> batchIds);
}
